/**
 * 文本常规，通用操作
 */

// 复制
document.execCommand("Copy", "false", null);

// 剪切
document.execCommand("Cut", "false", null);

// 粘贴
document.execCommand("paste", "false", null);

// 删除
document.execCommand("delete", "false", null);

// 撤销
document.execCommand("undo", "false", null);

// 重做
document.execCommand("redo", "false", null);

// 全选
document.execCommand("selectAll", "false", null);

/**
 * 光标相关
 */

/** forwardDelete
 * 删除光标所在位置的字符。 和按下删除键一样。 */
document.execCommand("forwardDelete", "false", null);

/** insertText
 * 在光标插入位置插入文本内容或者覆盖所选的文本内容。 */
document.execCommand("insertText", "false", sText);

/** insertImage
 * 在插入点插入一张图片（删除选中的部分）。需要一个 URL 字符串作为参数。这个 URL 图片地址至少包含一个字符。空白字符也可以（IE会创建一个链接其值为null） */
document.execCommand("insertImage", "false", sURL);

/**
 * 特殊的
 */

/***  Open
 * 相当于单击文件中的打开按钮 */
document.execCommand("Open");

/** ClearAuthenticationCache
 * 清除缓存中的所有身份验证凭据。 */
document.execCommand("ClearAuthenticationCache", "false", null);

/**
 * 编辑器设置
 */

/** backColor
 * 修改文档的背景颜色。在styleWithCss模式下，则只影响容器元素的背景颜色。这需要一个<color> 类型的字符串值作为参数传入。注意，IE浏览器用这个设置文字的背景颜色。*/
document.execCommand("BackColor", "false", sColor);

/** contentReadOnly
 * 通过传入一个布尔类型的参数来使能文档内容的可编辑性。(IE浏览器不支持) */
document.execCommand("contentReadOnly", "false", sBoolen);

/** enableAbsolutePositionEditor
 * 启用或禁用允许移动绝对定位元素的抓取器。Firefox 63 Beta/Dev Edition 默认禁用此功能(bug 1449564)。 */
document.execCommand("enableAbsolutePositionEditor", "false", null);

/** enableInlineTableEditing
 * 启用或禁用表格行和列插入和删除控件。(IE浏览器不支持) */
document.execCommand("enableInlineTableEditing", "false", null);

/** enableObjectResizing
 * 启用或禁用图像和其他对象的大小可调整大小手柄。(IE浏览器不支持) */
document.execCommand("enableObjectResizing", "false", null);

/**
 * 格式化
 */

/** formatBlock
 * 添加一个HTML块式标签在包含当前选择的行, 如果已经存在了，更换包含该行的块元素 (在 Firefox中, BLOCKQUOTE 是一个例外 -它将包含任何包含块元素). 需要提供一个标签名称字符串作为参数。几乎所有的块样式标签都可以使用(例如. "H1", "P", "DL", "BLOCKQUOTE"). (IE浏览器仅仅支持标题标签 H1 - H6, ADDRESS, 和 PRE,使用时还必须包含标签分隔符 < >, 例如 "<H1>".) */
document.execCommand("formatBlock", "false", sTagName);

/** removeFormat
 * 对所选内容去除所有格式 */
document.execCommand("removeFormat", "false", null);

/** defaultParagraphSeparator
 * 更改在可编辑文本区域中创建新段落时使用的段落分隔符。 */
document.execCommand("defaultParagraphSeparator", "false", "br");

/** insertBrOnReturn
 * 控制当按下Enter键时，是插入 br 标签还是把当前块元素变成两个。(IE浏览器不支持) */
document.execCommand("insertBrOnReturn", "false", null);

/**
 * 布局与对齐
 */

// 居左
document.execCommand("justifyLeft", "false", null);

// 居中
document.execCommand("justifyCenter", "false", null);

// 居右
document.execCommand("justifyRight", "false", null);

// 两端对齐
document.execCommand("justifyFull", "false", null);

/** insertOrderedList
 * 在插入点或者选中文字上创建一个有序列表 */
document.execCommand("insertOrderedList", "false", null);

/** insertUnorderedList
 * 在插入点或者选中文字上创建一个无序列表。 */
document.execCommand("insertUnorderedList", "false", null);

/** indent
 * 缩进选择或插入点所在的行， 在 Firefox 中, 如果选择多行，但是这些行存在不同级别的缩进, 只有缩进最少的行被缩进。 */
document.execCommand("indent", "false", null);

/** outdent
 * 对光标插入行或者所选行内容减少缩进量。 */
document.execCommand("outdent", "false", null);

/** insertParagraph
 * 在选择或当前行周围插入一个段落。(IE会在插入点插入一个段落并删除选中的部分.) */
document.execCommand("insertParagraph", "false", null);

/** insertHorizontalRule
 * 在插入点插入一个水平线（删除选中的部分） 最后一个参数为颜色 */
document.execCommand("insertHorizontalRule", "false", null);

/** insertHTML
 * 在插入点插入一个HTML字符串（删除选中的部分）。需要一个个HTML字符串作为参数。(IE浏览器不支持) */
document.execCommand("insertHTML", "false", sTagName);

/**
 * 文字相关
 */

/** heading
 * 添加一个标题标签在光标处或者所选文字上。 需要提供标签名称字符串作为参数 (例如. "H1", "H6"). (IE 和 Safari不支持) */
document.execCommand("heading", "false", sTagName);

/** fontSize
 * 在插入点或者选中文字部分修改字体大小. 需要提供一个HTML字体尺寸 (1-7) 作为参数。 */
document.execCommand("fontSize", "false", sFontSize);

/** bold
 * 开启或关闭选中文字或插入点的粗体字效果。IE浏览器使用 <strong>标签，而不是<b>标签。 */
document.execCommand("Bold", "false", null);

/** italic
 * 在光标插入点开启或关闭斜体字。 (Internet Explorer 使用 EM 标签，而不是 I ) */
document.execCommand("italic", "false", null);

/** foreColor
 * 在插入点或者选中文字部分修改字体颜色. 需要提供一个颜色值字符串作为参数。 */
document.execCommand("foreColor", "false", sForeColor);

/** hiliteColor
 * 更改选择或插入点的背景颜色。需要一个颜色值字符串作为值参数传递。 UseCSS 必须开启此功能。(IE浏览器不支持) */
document.execCommand("hiliteColor", "false", sHiliteColor);

/** decreaseFontSize
 * 给选中文字加上 <small> 标签，或在选中点插入该标签。(IE浏览器不支持) */
document.execCommand("decreaseFontSize", "false", null);

/** increaseFontSize
 * 在选择或插入点周围添加一个BIG标签。(IE浏览器不支持) */
document.execCommand("increaseFontSize", "false", null);

/** fontName
 * 在插入点或者选中文字部分修改字体名称. 需要提供一个字体名称字符串 (例如："Arial")作为参数。 */
document.execCommand("fontName", "false", sFontName);

/** strikeThrough
 * 在光标插入点开启或关闭删除线。 */
document.execCommand("strikeThrough", "false", null);

/*** underline
 * 在光标插入点开启或关闭下划线。*/
document.execCommand("underline", "false", null);

/** subscript
 * 在光标插入点开启或关闭下角标。 */
document.execCommand("subscript", "false", null);

/** superscript
 * 在光标插入点开启或关闭上角标。 */
document.execCommand("superscript", "false", null);

/** createLink
 * 将选中内容创建为一个锚链接。这个命令需要一个hrefURI字符串作为参数值传入。URI必须包含至少一个字符，例如一个空格。（浏览器会创建一个空链接） */
document.execCommand("CreateLink", "false", sLinkURL);

/***  unlink
 * 去除所选的锚链接的<a>标签 */
document.execCommand("unlink", "false", null);

/***  CreateBookmark
 * 设置指定锚点为书签 */
document.execCommand("CreateBookmark", "false", sAnchorName);